Language and Tool Support for Class and State Machine Refinement in UML-B
نویسندگان
چکیده
UML-B is a ’UML-like’ graphical front end for Event-B that provides support for object-oriented modelling concepts. In particular, UML-B supports class diagrams and state machines, concepts that are not explicitly supported in plain Event-B. In Event-B, refinement is used to relate system models at different abstraction levels. The same abstraction-refinement concepts can also be applied in UML-B. This paper introduces the notions of refined classes and refined state machines to enable refinement of classes and state machines in UML-B. Together with these notions, a technique for moving an event between classes to facilitate abstraction is also introduced. Our work makes explicit the structures of class and state machine refinement in UML-B. The UML-B drawing tool and Event-B translator are extended to support the new refinement concepts. A case study ofion is also introduced. Our work makes explicit the structures of class and state machine refinement in UML-B. The UML-B drawing tool and Event-B translator are extended to support the new refinement concepts. A case study of an auto teller machine (ATM) is presented to demonstrate application and effectiveness of refined classes and refined state machines.
منابع مشابه
Class and State Machine Refinement in UML-B
UML-B is a ’UML-like’ graphical front end for Event-B. It adds support for object oriented modeling concepts while visually retaining the Event-B modeling concepts. In the continuity of the work on UML-B, we strengthen its refinement concepts. Development in Event-B is done through refinements of an abstract model. Since Event-B is reflected in UML-B, the abstraction-refinement concepts must al...
متن کاملTool-Supported Use of UML for Developing B Projects
Much work has been undertaken to find suitable translations from UML to B. Most of this work concentrates on the abstract machine specification level and de-composition of a large machine into smaller machines based on the UML classes and their relationships. However, the primary decomposition mechanism in B is not the inclusion of other machines; it is decomposition by refinement. An abstract ...
متن کاملUML-B: A Plug-in for the Event-B Tool Set
UML-B provides a graphical front end for Event-B. It adds support for class-oriented and state machine modelling. UML-B is similar to UML but has its own meta-model. UML-B provides tool support, including drawing tools and a translator to generate Event-B models. The tools are closely integrated with the Event-B tools. When a drawing is saved the translator automatically generates the correspon...
متن کاملUML Metamodel Formalization with Object-Z: the State Machine Package
This paper presents a formalization using Object-Z of the State Machine package in the UML metamodel. In the specification, the abstract syntax and the static and dynamic semantics for each individual model construct in the package are grouped together and encapsulated within a single Object-Z class. For formalizing the dynamic semantics, a denotational semantics of the construct is first given...
متن کاملVisualising program transformations in a stepwise manner
For designing and developing complex, correct and reliable systems formal methods are the most beneficial approach. However, a formal methodology could be difficult for industry practitioners due to its mathematical notation. Hence it needs to be supported by more approachable platform, which would give guidance both for industry and research world representatives. The Unified Modelling Languag...
متن کامل